/*
 * Copyright (C), 2002-2017, 苏宁易购电子商务有限公司
 * FileName: StringNullAdapter.java
 * Author:   15050536
 * Date:     2017年3月29日 上午9:41:38
 * Description: //模块目的、功能描述      
 * History: //修改记录
 * <author>      <time>      <version>    <desc>
 * 修改人姓名             修改时间            版本号                  描述
 */
package com.suning.sawp.member.utils;

import java.io.IOException;

import com.google.gson.TypeAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonToken;
import com.google.gson.stream.JsonWriter;

/**
 * gson 转换对象的时候 null变空字符串
 *
 * @author 15050536 石键平
 */
public class StringNullAdapter extends TypeAdapter<String> {
	@Override
	public String read(JsonReader reader) throws IOException {
		// TODO Auto-generated method stub
		if (reader.peek() == JsonToken.NULL) {
			reader.nextNull();
			return "";
		}
		return reader.nextString();
	}

	@Override
	public void write(JsonWriter writer, String value) throws IOException {
		// TODO Auto-generated method stub
		if (value == null) {
			// writer.nullValue();
			// return;
			value = "";
		}
		writer.value(value);
	}
}
